package com.torry.replay.infras.entity;

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalTime;

import com.zen.boot.starter.mybatisplus.base.Entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * <p>
 *
 * </p>
 *
 * @author torry.wang
 * @since 2023-12-06
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("t_limit_up")
@ApiModel(value = "LimitUpDO对象", description = "")
public class LimitUpDO extends Entity {

    private static final long serialVersionUID = 1L;

    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JSONField(format = "yyyy-MM-dd")
    private LocalDate date;

    private String name;

    private BigDecimal price;

    @ApiModelProperty(value = "放量1 缩量2 平量3")
    private Integer quantity;

    @ApiModelProperty(value = "涨幅 单位 %")
    private Double increaseRange;

    @ApiModelProperty(value = "流通市值，单位 亿")
    private Double marketValue;

    @ApiModelProperty(value = "成交额 单位 亿")
    private Double volume;

    @ApiModelProperty(value = "封板资金 单位 亿")
    private Double sealAmount;

    @ApiModelProperty(value = "换手率 单位 %")
    private Double turnoverRate;

    @DateTimeFormat(pattern = "HH:mm:ss")
    @JSONField(format = "HH:mm:ss")
    @ApiModelProperty(value = "首次封板时间 HH:mm:ss")
    private LocalTime limitTime;


    @DateTimeFormat(pattern = "HH:mm:ss")
    @JSONField(format = "HH:mm:ss")
    @ApiModelProperty(value = "最后封板时间 HH:mm:ss")
    private LocalTime lastLimitTime;

    @ApiModelProperty(value = "炸板次数")
    private Integer bombCount;

    @ApiModelProperty(value = "涨停统计 几天几板")
    private String stat;

    @ApiModelProperty(value = "连板数")
    private Integer continuousCount;

    @ApiModelProperty(value = "涨停逻辑")
    private String logic;

    @ApiModelProperty(value = "板块/概念 标签id")
    private Integer tagId;

    @TableField(exist = false)
    private String tagName;

}
